package com.example.warehouse.bus.pojo.param;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.*;
import java.io.Serializable;

/**
 * @author Linger
 * @date 2023-07-03 11:43
 * @desciption:添加客户的参数类
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class BusProviderAddNewParam implements Serializable {

    @NotEmpty(message = "添加失败，请填写供应商名！")
    @Pattern(regexp = "^[a-zA-Z][a-zA-Z0-9_-]{3,15}$", message = "添加失败，必须是4~16个由字符、字母、数字、下划线、减号组成的字符！")
    private String providerName; //用户名

    private String zip;                       // 邮政编码

    @NotEmpty(message = "添加失败，请填写地址！")
    private String address;                   // 地址


    private String telephone;                 // 移动电话

    @NotEmpty(message = "添加失败，请填写姓名！")
    private String connectionPerson;          // 联系人姓名

    @NotEmpty(message = "添加失败，请填写手机号！")
    @Pattern(regexp = "^1\\d{10}$", message = "添加失败，手机号必须为以1开头，后面是10个数字，确保输入字符串只包含11位数字且以1开头。")
    private String phone;                     // 手机号码


    private String bank;                      // 开户行


    private String account;                   // 银行卡号

    @NotEmpty(message = "添加失败，请填写邮箱！")
    @Pattern(regexp = "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$", message = "添加失败，请输入正确的邮箱地址")
    private String email;                     // 邮箱


    private String fax;                       // 传真号
    /**
     * 是否启用，1=启用，0=未启用
     */
    @NotNull(message = "添加失败，请选择的启用状态！")
    @Min(value = 0, message = "添加失败，启用状态的值必须是0或1！")
    @Max(value = 1, message = "添加失败，启用状态的值必须是0或1！")
    private Integer enable;                   // 是否启用1启用0不启用
}
